package com.chuanyun.wechatcheckin.model.wechat;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

import java.util.List;

/**
 * 企业微信获取打卡记录请求参数
 */
@Data
public class CheckinDataRequest {
    
    /**
     * 打卡类型
     * 1：上下班打卡；2：外出打卡；3：全部打卡
     */
    @JsonProperty("opencheckindatatype")
    private Integer openCheckinDataType;
    
    /**
     * 获取打卡记录的开始时间（Unix时间戳）
     */
    @JsonProperty("starttime")
    private Long startTime;
    
    /**
     * 获取打卡记录的结束时间（Unix时间戳）
     */
    @JsonProperty("endtime")
    private Long endTime;
    
    /**
     * 需要获取打卡记录的用户列表（不超过100个）
     */
    @JsonProperty("useridlist")
    private List<String> userIdList;
    
    /**
     * 构造函数
     */
    public CheckinDataRequest() {}
    
    /**
     * 构造函数
     * @param openCheckinDataType 打卡类型
     * @param startTime 开始时间
     * @param endTime 结束时间
     * @param userIdList 用户ID列表
     */
    public CheckinDataRequest(Integer openCheckinDataType, Long startTime, Long endTime, List<String> userIdList) {
        this.openCheckinDataType = openCheckinDataType;
        this.startTime = startTime;
        this.endTime = endTime;
        this.userIdList = userIdList;
    }
}